/*
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 */

// Wait for the deviceready event before using any of Cordova's device APIs.
// See https://cordova.apache.org/docs/en/latest/cordova/events/events.html#deviceready
document.addEventListener('deviceready', onDeviceReady, false);

function onDeviceReady() {
  console.log('Running cordova-' + cordova.platformId + '@' + cordova.version);

  // 修改状态栏颜色
  StatusBar.backgroundColorByHexString('#d6392f');

  /**
   * 消息处理
   */
  window.addEventListener("message", e => {
    const data = e.data
    const action = data.action
    switch (action) {
      // 推送消息
      case 'pushMessage':
        cordova.plugins.notification.local.schedule({
          // id: 15,
          title: data.title,
          text: data.text,
          foreground: true,
          icon: 'http://climberindonesia.com/assets/icon/ionicons-2.0.1/png/512/android-chat.png',
        });
        break;

      // 播放音频
      case 'playSound':
        console.log('playSound');
        break;

      // http 请求
      case 'request':
        data.request.headers = data.request.headers || {}
        axios({
          ...data.request,
          headers: {
            ...data.request.headers,
            'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1'
          }
        }).then(res => {
          e.source[data.success] && e.source[data.success](res)
        }).catch(err => {
          e.source[data.fail] && e.source[data.fail](err)
        })
    }
	});
}
